import request from '@/config/axios'

// 发票 VO
export interface InvoiceVO {
  id: number // ID
  userId: number // 用户id
  openid: string // openid
  orgName: string // 机构名称
  orgCode: string // 机构编码
  patientName: string // 姓名
  idCardNo: string // 身份证号
  patientId: string // 病人ID
  clinicNo: string // 门诊号
  orderNumber: string // 订单号
  orderType: string // 订单类型
  orderName: string // 订单名称
  amout: string // 金额
  operator: string // 操作人员
  operateType: string // 操作类型
  settleId: string // 结账id
  invoiceType: string // 发票类型
  invoiceNo: string // 发票号
  invoiceCode: string // 发票编码
  invoiceUrl: string // 发票地址
  checkCode: string // 校验码
  remark: string // 备注
  status: number // 状态
}

// 发票 API
export const InvoiceApi = {
  // 查询发票分页
  getInvoicePage: async (params: any) => {
    return await request.get({ url: `/hospital/invoice/page`, params })
  },

  // 查询发票详情
  getInvoice: async (id: number) => {
    return await request.get({ url: `/hospital/invoice/get?id=` + id })
  },

  // 新增发票
  createInvoice: async (data: InvoiceVO) => {
    return await request.post({ url: `/hospital/invoice/create`, data })
  },

  // 修改发票
  updateInvoice: async (data: InvoiceVO) => {
    return await request.put({ url: `/hospital/invoice/update`, data })
  },

  // 删除发票
  deleteInvoice: async (id: number) => {
    return await request.delete({ url: `/hospital/invoice/delete?id=` + id })
  },

  // 导出发票 Excel
  exportInvoice: async (params) => {
    return await request.download({ url: `/hospital/invoice/export-excel`, params })
  }
}